home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
tools
/
utils
/
duhr_112
/
d_uhr112.txt
next >
Wrap
Text File
|
1995-11-25
|
15KB
|
382 lines
Die Uhr
Eine Digitaluhr als Accessory
Die Dokumentation vom 30.03.93
*Pentagramm Software Braunschweig
Thomas Birke Hinnerk Rümenapf
birke@bii.bessy.de Ottweilerstr. 18
38116 Braunschweig
Ein Programm von Thomas Birke & Hinnerk Rümenapf
(C) 1987 - 1993 T.B. & HWR
Die Uhr darf von jedem angewendet werden, der sie an jeden
weitergibt, der sie vielleicht anwenden möchte.
Die Uhr darf NUR KOMPLETT weitergegeben werden, also mit den
UNVERÄNDERTEN Dateien:
- DIE_UHR.ACC Das Accessory
- D_UHR112.TXT Diese Datei
- UHRCONF.PRG Konfigurationsprogramm für Die Uhr
- UHRCONF.RSC Resource-Datei dazu
Alle Rechte liegen bei den Autoren.
Wir übernehmen keine Garantie.
Wir haften -nicht- für Schäden, die durch Fehlfunktion, korrekte Funktion,
das Kopieren oder durch die bloße Existenz der Programme entstehen.
Geschichte(n)
Die Uhr begann ihr Dasein als erster Test 'Wir stricken uns ein
Accessory'. In den folgenden Jahren wurde sie ständig den geänderten
Anforderungen angepasst.
Übrigens ... wir benutzen sie selber (immer noch!).
Die Uhr ist noch so eine Uhr als Accessory, aber mit einigen Vorteilen :
EXTRA Version 1.12 März '93
===== - Bildschirmschoner (z.B. Before Dawn) werden erkannt und nicht
beim Schonen gestört (wenn sie einen entsprechenden 'cookie'
intsallieren).
Jetzt Neu! Version 1.1 Nov/Dez 1992 (hier nur die wichtigsten Änderungen)
========== (englischsprachige Version 1.1E ist vorhanden)
- Ziffern und X-Position der Zeitanzeige können konfiguriert werden
- Ein 12-Stunden Modus (am/pm) nach englischer Art wurde eingeführt
- Das laufende Accessory kann OHNE RESET neu konfiguriert werden, ver-
änderungen der Anzeigeart werden sofort übernommen.
- Ein paar kleine Fehlerkorrekturen, über die wir nicht weiter reden.
Version 1.0 Juni/Juli 1992
- Ein reines GEM-Programm, es werden keine Vektoren verbogen oder
Interrupt-Routinen installiert.
- Eine kleine, uns wohlbekannte, Melodie zu jeder vollen Stunde
(abschaltbar).
- Unterstützt jede Bildschirmauflösung (Ausgabe über das VDI).
- Auch ein Wechsel der Auflösung ohne Reset (z.B. von AS-Overscan)
wird erkannt und behandelt.
- Die Weckfunktion hat ein 'Zeit-Fenster'. Wenn unsaubere Programme
die Accessories nicht immer zum Zuge kommen lassen wird auch noch
innerhalb einer halben Stunde nach der eigentlichen Weckzeit der
Wecker gestartet, wenn Die Uhr bis dahin noch keine Gelegenheit
dazu hatte (danach ist der Zug eh' abgefahren).
- Speichersparend durch externes Konfigurationsprogramm.
- Die Uhr ist konfigurierbar, es läßt sich z.B. voreinstellen :
-- Woraus soll Die Uhr die Uhrzeit bestimmen ?
-- Soll die Uhrzeit angezeigt werden ?
-- Soll zur vollen Stunde die (kurze!) Melodie gespielt werden ?
-- Wie oft soll die Uhrzeit neu bestimmt werden ?
. . .
- Das Konfigurationsprogramm und Die Uhr arbeiten mit "Let 'em fly"
von Oliver Scheel zusammen.
Soviel zum Eigenlob, nun zur Beschreibung :
0. GEM-Accessories
------------------
Die Accessories sind Hilfsprogramme, die bei jedem Systemstart
(z.B. Einschalten, Reset) vom Bootlaufwerk geladen werden. Sie laufen 'fast'
parallel zu GEM - Programmen (wenn diese anständig programmiert sind).
Sollte Die Uhr einmal mitten bei Ihrer Arbeit stehenbleiben, kann das
verschiedene Gründe haben :
In GEM - Programmen (Endung .PRG oder .APP) :
Der Programmierer hat die Accessories vergessen, oder er gönnt
ihnen keine Rechenzeit. Nach Beenden des Programmes sollte
Die Uhr mit der richtigen Uhrzeit weiterlaufen.
In TOS - Programmen (Endung .TOS oder .TTP) :
Hier kann Die Uhr nicht weiterlaufen, während dieser Programme ist
sie gestoppt. Nach Beenden des Programmes sollte Die Uhr mit der
richtigen Uhrzeit weiterlaufen.
Die Uhr ist über den gleichnamigen Menüpukt zum Menütitel ganz links zu
erreichen. Wenn Sie diesen Menüpunkt anwählen wird eine Dialogox dargestellt,
in der Sie verschiedene Einstellungen vornehmen können (siehe unten).
Wenn Ihr Rechner nicht mit einer Hardware-Uhr ausgestattet ist, müssen Sie
die Uhrzeit wohl von Hand stellen, z.B. mit dem Kontrollfeld, oder einem
extra-Programm (z.B. D_T.PRG ).
1. Zeitanzeige
--------------
Die Uhrzeit wird rechts oben in der Menüleiste angezeigt. Auch wenn die Bild-
schirmauflösung sich ändert (z.B. AS-Overscan) bleibt der eingestellte Abstand
zum rechten Bildrand konstant.
Wahlweise wird eine 24- oder eine 12- Stunden Anzeige dargestellt.
Die 12-Stunden Anzeige ergänzt die Ziffern durch einen Buchstaben: "a" für
Vormittag, und "p" für Nachmittag, wie in englischsprachigen Ländern üblich.
Ist zusätzlich zur Zeitanzeige auch der Wecker eingeschaltet, wird rechts
neben der Uhrzeit ein kleines Glockensymbol ausgegeben.
Extrabreite Menüzeilen
Manche Programme nutzen die gesamte Bildbreite für ihre Menüzeile
aus. In diesem Fall wird der letzte Menüpunkt von der Zeitanzeige
übermalt, was aber lediglich ein Schönheitsfehler ist, das Menü
funktioniert trotzdem einwandfrei.
TEMPUS
Sie können in den üblichen ST-Bildschirmauflösungen die Zeitanzeige
an der selben Stelle wie die TEMPUS-Uhr ausgeben lassen, auch in nicht
allzustark erweiterten Bildschirmauflösungen geht das problemlos.
Die Einstellung ist aber nicht für alle Bildschirmauflösungen korrekt,
denn die Anzeige der TEMPUS-Uhr behält ihre X-Position, während
Die Uhr ihre Zeitanzeige entsprechend der Änderung der Bildbreite
verschiebt.
Die TEMPUS-Uhr wird mit ALTENATE ' abgeschaltet, für Die Uhr
siehe unten.
In der Dialogbox wird die Zeitanzeige mit den Knöpfen neben dem Uhrsymbol
an- oder ausgeschaltet.
Die Voreinstellung Zeitanzeige Ein/Aus ist konfigurierbar.
2. Melodie zur vollen Stunde
----------------------------
Zuhören und sich freuen, oder diese Option abschalten.
Immer wenn sich die Stunde ändert, kann Die Uhr eine kurze Melodie (naja,
nur 8 Töne) spielen.
In der Dialogbox wird die Melodie zur vollen Stunde mit den Knöpfen neben der
kleinen Note an- oder ausgeschaltet.
Die Voreinstellung Melodie zur vollen Stunde Ein/Aus ist konfigurierbar.
3. Wecker
---------
Um geweckt zu werden ...
- In der Menüleiste den Eintrag 'Die Uhr' anklicken, die Dialogbox wird
dargestellt.
- Mit den Knöpfen neben dem Glockensymbol wird der Wecker an- und ausge-
schaltet. Klicken Sie den Knopf 'An' (rechts neben dem Glockensymbol)
an.
- unten in der Dialogbox ist das Eingabefeld für die Weckzeit. Tragen Sie
hier also die gewünschte Weckzeit ein (Backspace, Delete löschen).
Auch bei der Weckzeit wird zwischen 12- und 24 Stunden Modus
unterschieden:
24-Stunden Modus
================
Es müssen IMMER 4 ZIFFERN eingegeben werden, zum Beispiel :
Zeit Anzeige im Eingabefeld
--------------------------------------------
Ein Uhr zwölf 01:12
Neun Uhr drei 09:03
Vierzehn Uhr fünf 14:05
10 Minuten nach Mitternacht 00:10
12-Stunden Modus
================
In diesem Modus werden zusätzlich unter dem Eingabefeld zwei Knöpfe
angezeigt, der eine ist mit AM bezeichnet, der andere mit PM .
Es müssen auch hier immer 4 Ziffern eigegeben werden, zusätzlich dazu
müssen Sie einen der der beiden Knöpfe AM/PM anklicken, zum Beispiel:
Zeit Anzeige im Eingabefeld angeclickt
-----------------------------------------------------------
Ein Uhr zwölf 01:12 AM
Neun Uhr drei 09:03 AM
Vierzehn Uhr fünf 02:05 PM
10 Minuten nach Mitternacht 12:10 PM
Klicken Sie danach den Knopf 'OK' an, die Dialogbox wird geschlossen.
Wenn Die Uhr mit Ihrer Eingabe nichts anfangen kann macht sie Sie
darauf aufmerksam, und die Dialogbox wird erneut geöffnet.
Gehen Sie dann zurück, zur Eingabe der Weckzeit.
Sind Wecker UND Zeitanzeige eingeschaltet, wird rechts neben der Uhrzeit
ein kleines Glockensymbol ausgegeben.
Wenn Sie es sich anders überlegen, und doch lieber ausschlafen wollen, öffnen
Sie wieder die Dialogbox (über den Menüpunkt 'Die Uhr'), und klicken Sie den
Knopf 'Aus' -rechts neben dem Glockensymbol!- an.
Wie schon in den Allgemeinen Bemerkungen über Accessories erwähnt, ist nicht
sichergestellt, daß Die Uhr immer Rechtzeitig zum Wecken vom AES etwas
Rechenzeit zur Verfügung gestellt bekommt. Damit die Weckfunktion trotzdem zu
etwas nütze ist weckt Sie Die Uhr auch noch innerhalb einer halben Stunde
nach der eingestellten Weckzeit -- wenn sie vorher noch keine Gelegenheit dazu
hatte.
4. Woher Die Uhr die Uhrzeit hat
----------------------------------
Das Betriebssystem dieses Rechners hat eine vielschichtige Art die Zeit zu
messen. Die Uhr kann sich mehrerer Möglichkeiten bedienen, um zu er-
fahren wie spät es ist. Die Einstellung, welche dieser Arten nun verwendet
werden soll, wird unter 5. beschrieben.
Alle diese Methoden haben so ihre Vor- und Nachteile :
TIMER
Beim Starten des Accessorys wird EINMAL die GEMDOS-Uhr abgefragt,
danach wird die vergangene Zeit aus dem 200 Hertz Systemtimer
berechnet.
Daraus folgt, daß Die Uhr nichts davon merkt, wenn die System-
Uhrzeit verändert wird. Darum wird beim Öffnen der Dialogbox die
GEMDOS-Uhr abgefragt, und Die Uhr erneut nach der GEMDOS-Uhr
gestellt.
Sollte also Die Uhr etwas anderes als die GEMDOS-Uhrzeit anzeigen
einfach die Dialogbox über die Menüzeile öffnen, und wieder schließen.
( Es soll Programme geben, die den 200 Hertz Timer setzen. Sollte das
passieren, zeigt Die Uhr natürlich Blödsinn an.
[ Welche Programme sollten das tun ? Warum ?? WIE ??? ]
Sollte Ihnen so etwas begegnen verfahren Sie wie oben beschrieben. )
XBIOS
in Rechnern ohne extra Hardware-Uhr (1040 STF[M], 1040 STE, ... )
wird über das XBIOS die Uhr im Tastaturprozessor abgefragt.
Das verhindert das der Bildschirmschoner von MACCEL3 anspricht.
In Rechnern MIT HARDWAREUHR ab Werk (MEGA ST[E], ...) empfehlenswert.
GEMDOS
Die Uhrzeit beim GEMDOS zu erfragen hat auch einen Nachteil :
DAS PROBLEM :
Wenn eine dieser netten Meldungen "Laufwerk X antwortet nicht ..."
auf dem Bildschirm erscheint, hat irgendein Programm das GEMDOS
aufgerufen, das GEMDOS wiederum das BIOS (oder XBIOS ?), dieses
wiederum das AES, welches uns mit diesen wundervollen Meldungen
erfreut. Wenn nun das AES aktiv ist läßt es Die Uhr auch mal an
die Reihe, allerdings ist der ursprüngliche GEMDOS-Aufruf noch nicht
beendet. Wenn nun Die Uhr die GEMDOS-Uhr abfragt, bevor der ur-
sprüngliche GEMDOS-Aufruf beendet ist, stürzt das ganze ab.
Um diese Gefahrenquelle auszuschalten, wird vor jeder GEMDOS-Zeitab-
frage die AES-Funktion WindowUpdate ( 1 ) aufgerufen, danach
WindowUpdate ( 0 ). Dadurch muß die Uhr warten, bis das AES
Dialogboxen oder Menüs fertig behandelt hat.
NACHTEIL :
Solange ein Programm mit WindowUpdate das AES zurückhält, steht
Die Uhr (z.B. solange Dialogboxen geöffnet sind, oder Fenster neu
gezeichnet werden).
5. Konfiguration
----------------
Falls Sie mit der Standardeinstellung nicht zufrieden sind, können Sie sie
mit UHRCONF.PRG verändern.
UHRCONF.PRG wurde als extra-Programm geschrieben, damit das Accessory nicht
unnötig lang wird.
Nachdem Sie UHRCONF.PRG gestartet haben, übernimmt das Programm alle
Einstellungen aus dem Accessory (falls es beim Systemstart geladen wurde).
Sie können nun in der angezeigten Dialogbox alle Einstellungen nach Ihren
Vorstellungen ändern.
Wenn eine Änderung das Aussehen der Zeitanzeige betrifft, wird Die Uhr ,
falls aktiv, sofort darauf reagieren.
LADEN
Die Einstellungen aus der Datei DIE_UHR.ACC werden gelesen und
anzeigt. Ist Die Uhr aktiv, werden die geladenen Einstellungen vom
laufenden Accessory übernommen.
SPEICHERN
Die momentan angezeigten Einstellungen werden in die Datei
DIE_UHR.ACC geschrieben.
Nur die so geschriebenen Einstellungen bleiben auch nach einem
Neustart des Rechners (z.B. Reset) erhalten.
OK
Beendet das Programm.
Sollte UHRCONF.PRG mit einer älteren oder jüngeren Accessory-Version
konfrontiert werden, wir es Ihnen das mitteilen. Es können dann nicht alle
Einstellungsmöglichkeiten genutzt werden.
ANHANG A: Der Patchbereich (für die ewig Neugierigen)
--------------------------
Beispiel für einen gültigen Patchbereich:
&Die_Uhr_Vars:TZM2k1pS&
||||||||
|||||||+- S : Siebensegment Ziffern
||||||| s : normale Ziffern
|||||||
||||||+- P : 12-Stunden Anzeige in englischer Notation
|||||| p : 24-Stunden Anzeige
||||||
|||||+- "1" bis "9" : Abstand zum rechten Bildschirmrand
||||| (in Zeichenbreiten)
|||||
||||+-- K : Anzeige kursiv (schräggestellt)
|||| k : Anzeige normal (gerade)
||||
|||+--- "1" bis "9" : Soviele Sekunden wird gewartet, bis
||| Die Uhr erneut die Uhrzeit bestimmt.
|||
||+---- M : Melodie zur vollen Stunde AN
|| m : ---------- " ---------- AUS
||
|+----- Z : Zeitanzeige AN
| z : --- " --- AUS
|
+------ T : 200 Hz - Timer zur Zeitbestimmung benutzen.
X : XBIOS - Uhr abfragen
G : GEMDOS - Uhr abfragen [ siehe dazu 4. ]
Dokumentation von Hinnerk Rümenapf.
(Schreib- und andere Fehler vorbehalten.)
+++